home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 109 / EnigmaAmiga109CD.iso / dalla rivista / host contacted / jikes.lha / jikes-1.11 / src / error.h < prev    next >
C/C++ Source or Header  |  2000-01-06  |  34KB  |  652 lines

  1. // $Id: error.h,v 1.32 2000/01/06 08:24:30 lord Exp $
  2. //
  3. // This software is subject to the terms of the IBM Jikes Compiler
  4. // License Agreement available at the following URL:
  5. // http://www.ibm.com/research/jikes.
  6. // Copyright (C) 1996, 1998, International Business Machines Corporation
  7. // and others.  All Rights Reserved.
  8. // You must accept the terms of that agreement to use this software.
  9. //
  10. #ifndef error_INCLUDED
  11. #define error_INCLUDED
  12.  
  13. #include "config.h"
  14. #include "stream.h"
  15. #include "tuple.h"
  16.  
  17. class Control;
  18. class LexStream;
  19. class Ast_CompilationUnit;
  20. class SymbolSet;
  21. class Semantic;
  22.  
  23. class SemanticError
  24. {
  25. public:
  26.     enum SemanticErrorKind
  27.     {
  28.         BAD_ERROR,
  29.         DEFAULT_ERROR,
  30.  
  31.         INVALID_OPTION,
  32.         INVALID_K_OPTION,
  33.         INVALID_K_TARGET,
  34.         INVALID_TAB_VALUE,
  35.         INVALID_DIRECTORY,
  36.         UNSUPPORTED_ENCODING,
  37.         UNSUPPORTED_OPTION,
  38.         DISABLED_OPTION,
  39.  
  40.         NO_CURRENT_DIRECTORY,
  41.         CANNOT_OPEN_ZIP_FILE,
  42.         CANNOT_OPEN_PATH_DIRECTORY,
  43.         PACKAGE_NOT_FOUND,
  44.         CANNOT_OPEN_DIRECTORY,
  45.         BAD_INPUT_FILE,
  46.         UNREADABLE_INPUT_FILE,
  47.         NON_STANDARD_LIBRARY_TYPE,
  48.         LIBRARY_METHOD_NOT_FOUND,
  49.         CANNOT_REOPEN_FILE,
  50.         CANNOT_WRITE_FILE,
  51.         CONSTANT_POOL_OVERFLOW,
  52.         INTERFACES_OVERFLOW,
  53.         METHODS_OVERFLOW,
  54.         STRING_OVERFLOW,
  55.         PARAMETER_OVERFLOW,
  56.         ARRAY_OVERFLOW,
  57.         FIELDS_OVERFLOW,
  58.         LOCAL_VARIABLES_OVERFLOW,
  59.         STACK_OVERFLOW,
  60.         CODE_OVERFLOW,
  61.         CANNOT_COMPUTE_COLUMNS,
  62.         EMPTY_DECLARATION,
  63.         REDUNDANT_ABSTRACT,
  64.         REDUNDANT_FINAL,
  65.         REDUNDANT_PUBLIC,
  66.         REDUNDANT_STATIC,
  67.         OBSOLESCENT_ABSTRACT,
  68.         OBSOLESCENT_BRACKETS,
  69.         NO_TYPES,
  70.         MULTIPLE_PUBLIC_TYPES,
  71.         TYPE_IN_MULTIPLE_FILES,
  72.         PACKAGE_TYPE_CONFLICT,
  73.         DIRECTORY_FILE_CONFLICT,
  74.         FILE_FILE_CONFLICT,
  75.         MISMATCHED_TYPE_AND_FILE_NAMES,
  76.         REFERENCE_TO_TYPE_IN_MISMATCHED_FILE,
  77.         DUPLICATE_INNER_TYPE_NAME,
  78.         DUPLICATE_TYPE_DECLARATION,
  79.         UNNECESSARY_TYPE_IMPORT,
  80.         DUPLICATE_ACCESS_MODIFIER,
  81.         DUPLICATE_MODIFIER,
  82.         FINAL_ABSTRACT_CLASS,
  83.         VOLATILE_FINAL,
  84.         FINAL_VOLATILE,
  85.         INVALID_TOP_LEVEL_CLASS_MODIFIER,
  86.         INVALID_INNER_CLASS_MODIFIER,
  87.         INVALID_STATIC_INNER_CLASS_MODIFIER,
  88.         INVALID_LOCAL_CLASS_MODIFIER,
  89.         INVALID_INTERFACE_MODIFIER,
  90.         INVALID_FIELD_MODIFIER,
  91.         INVALID_LOCAL_MODIFIER,
  92.         INVALID_METHOD_MODIFIER,
  93.         INVALID_SIGNATURE_MODIFIER,
  94.         INVALID_CONSTRUCTOR_MODIFIER,
  95.         INVALID_CONSTANT_MODIFIER,
  96.         UNINITIALIZED_FIELD,
  97.         PARENT_TYPE_IN_UNNAMED_PACKAGE,
  98.         RECOMPILATION,
  99.         TYPE_NOT_FOUND,
  100.         DUPLICATE_ON_DEMAND_IMPORT,
  101.         NOT_A_TYPE,
  102.         NOT_A_CLASS,
  103.         NOT_AN_INTERFACE,
  104.         SUPER_IS_FINAL,
  105.         OBJECT_WITH_SUPER_TYPE,
  106.         OBJECT_HAS_NO_SUPER_TYPE,
  107.         DUPLICATE_FIELD,
  108.         DUPLICATE_METHOD,
  109.         DUPLICATE_CONSTRUCTOR,
  110.         MISMATCHED_INHERITED_METHOD,
  111.         MISMATCHED_INHERITED_METHOD_EXTERNALLY,
  112.         DUPLICATE_FORMAL_PARAMETER,
  113.         MISMATCHED_CONSTRUCTOR_NAME,
  114.         METHOD_WITH_CONSTRUCTOR_NAME,
  115.         DUPLICATE_LOCAL_VARIABLE_DECLARATION,
  116.         DUPLICATE_LOCAL_TYPE_DECLARATION,
  117.         MULTIPLE_DEFAULT_LABEL,
  118.         UNDECLARED_LABEL,
  119.         DUPLICATE_LABEL,
  120.         CATCH_PRIMITIVE_TYPE,
  121.         CATCH_ARRAY_TYPE,
  122.         AMBIGUOUS_FIELD,
  123.         AMBIGUOUS_TYPE,
  124.         FIELD_IS_TYPE,
  125.         FIELD_NOT_FOUND,
  126.         FIELD_NAME_MISSPELLED,
  127.         FIELD_WITH_PRIVATE_ACCESS_NOT_ACCESSIBLE,
  128.         FIELD_WITH_DEFAULT_ACCESS_NOT_ACCESSIBLE,
  129.         NAME_NOT_FOUND,
  130.         METHOD_NOT_FIELD,
  131.         NAME_NOT_YET_AVAILABLE,
  132.         NAME_NOT_VARIABLE,
  133.         NAME_NOT_CLASS_VARIABLE,
  134.         NOT_A_NUMERIC_VARIABLE,
  135.         METHOD_NOT_FOUND,
  136.         METHOD_NAME_NOT_FOUND_IN_TYPE,
  137.         METHOD_NAME_MISSPELLED,
  138.         METHOD_WITH_PRIVATE_ACCESS_NOT_ACCESSIBLE,
  139.         METHOD_WITH_DEFAULT_ACCESS_NOT_ACCESSIBLE,
  140.         HIDDEN_METHOD_IN_ENCLOSING_CLASS,
  141.         FIELD_NOT_METHOD,
  142.         TYPE_NOT_METHOD,
  143.         TYPE_NOT_FIELD,
  144.         METHOD_NOT_CLASS_METHOD,
  145.         AMBIGUOUS_CONSTRUCTOR_INVOCATION,
  146.         AMBIGUOUS_METHOD_INVOCATION,
  147.         CONSTRUCTOR_NOT_FOUND,
  148.         METHOD_FOUND_FOR_CONSTRUCTOR,
  149.         ABSTRACT_TYPE_CREATION,
  150.         INVALID_INSTANCEOF_CONVERSION,
  151.         INVALID_CAST_CONVERSION,
  152.         INVALID_CAST_TYPE,
  153.         INCOMPATIBLE_TYPE_FOR_INITIALIZATION,
  154.         INCOMPATIBLE_TYPE_FOR_ASSIGNMENT,
  155.         INCOMPATIBLE_TYPE_FOR_BINARY_EXPRESSION,
  156.         INCOMPATIBLE_TYPE_FOR_CONDITIONAL_EXPRESSION,
  157.         VOID_ARRAY,
  158.         VOID_TYPE_IN_EQUALITY_EXPRESSION,
  159.         TYPE_NOT_THROWABLE,
  160.         TYPE_NOT_PRIMITIVE,
  161.         TYPE_NOT_INTEGRAL,
  162.         TYPE_NOT_NUMERIC,
  163.         TYPE_NOT_INTEGER,
  164.         TYPE_NOT_BOOLEAN,
  165.         TYPE_NOT_ARRAY,
  166.         TYPE_NOT_REFERENCE,
  167.         TYPE_NOT_VALID_FOR_SWITCH,
  168.         TYPE_IS_VOID,
  169.         VALUE_NOT_REPRESENTABLE_IN_SWITCH_TYPE,
  170.         TYPE_NOT_CONVERTIBLE_TO_SWITCH_TYPE,
  171.         DUPLICATE_CASE_VALUE,
  172.         MISPLACED_THIS_EXPRESSION,
  173.         MISPLACED_SUPER_EXPRESSION,
  174.         TARGET_VARIABLE_IS_FINAL,
  175.         FINAL_VARIABLE_TARGET_IN_LOOP,
  176.         UNINITIALIZED_FINAL_VARIABLE,
  177.         UNINITIALIZED_STATIC_FINAL_VARIABLE,
  178.         UNINITIALIZED_FINAL_VARIABLE_IN_CONSTRUCTOR,
  179.         INIT_SCALAR_WITH_ARRAY,
  180.         INIT_ARRAY_WITH_SCALAR,
  181.         INVALID_BYTE_VALUE,
  182.         INVALID_SHORT_VALUE,
  183.         INVALID_CHARACTER_VALUE,
  184.         INVALID_INT_VALUE,
  185.         INVALID_LONG_VALUE,
  186.         INVALID_FLOAT_VALUE,
  187.         INVALID_DOUBLE_VALUE,
  188.         INVALID_STRING_VALUE,
  189.         RETURN_STATEMENT_IN_INITIALIZER,
  190.         MISPLACED_RETURN_WITH_EXPRESSION,
  191.         MISPLACED_RETURN_WITH_NO_EXPRESSION,
  192.         MISMATCHED_RETURN_AND_METHOD_TYPE,
  193.         EXPRESSION_NOT_THROWABLE,
  194.         BAD_THROWABLE_EXPRESSION_IN_TRY,
  195.         BAD_THROWABLE_EXPRESSION_IN_METHOD,
  196.         BAD_THROWABLE_EXPRESSION,
  197.         MISPLACED_BREAK_STATEMENT,
  198.         MISPLACED_CONTINUE_STATEMENT,
  199.         MISPLACED_EXPLICIT_CONSTRUCTOR_INVOCATION,
  200.         INVALID_CONTINUE_TARGET,
  201.         NON_ABSTRACT_TYPE_CONTAINS_ABSTRACT_METHOD,
  202.         NON_ABSTRACT_TYPE_INHERITS_ABSTRACT_METHOD,
  203.         NON_ABSTRACT_TYPE_INHERITS_ABSTRACT_METHOD_FROM_ABSTRACT_CLASS,
  204.         NON_ABSTRACT_TYPE_CANNOT_OVERRIDE_DEFAULT_ABSTRACT_METHOD,
  205.         NO_ABSTRACT_METHOD_IMPLEMENTATION,
  206.         DUPLICATE_INTERFACE,
  207.         UNKNOWN_QUALIFIED_NAME_BASE,
  208.         UNKNOWN_AMBIGUOUS_NAME,
  209.         CIRCULAR_INTERFACE,
  210.         CIRCULAR_CLASS,
  211.         TYPE_NOT_ACCESSIBLE,
  212.         PRIVATE_FIELD_NOT_ACCESSIBLE,
  213.         PROTECTED_FIELD_NOT_ACCESSIBLE,
  214.         DEFAULT_FIELD_NOT_ACCESSIBLE,
  215.         PRIVATE_METHOD_NOT_ACCESSIBLE,
  216.         PROTECTED_METHOD_NOT_ACCESSIBLE,
  217.         DEFAULT_METHOD_NOT_ACCESSIBLE,
  218.         PRIVATE_CONSTRUCTOR_NOT_ACCESSIBLE,
  219.         PROTECTED_CONSTRUCTOR_NOT_ACCESSIBLE,
  220.         DEFAULT_CONSTRUCTOR_NOT_ACCESSIBLE,
  221.         CONSTRUCTOR_DOES_NOT_THROW_THIS_EXCEPTION,
  222.         CONSTRUCTOR_DOES_NOT_THROW_SUPER_EXCEPTION,
  223.         PARAMETER_REDECLARED,
  224.         BAD_ABSTRACT_METHOD_MODIFIER,
  225.         ABSTRACT_METHOD_MODIFIER_CONFLICT,
  226.         ABSTRACT_METHOD_INVOCATION,
  227.         FINAL_METHOD_OVERRIDE,
  228.         FINAL_METHOD_OVERRIDE_EXTERNALLY,
  229.         PRIVATE_METHOD_OVERRIDE,
  230.         PRIVATE_METHOD_OVERRIDE_EXTERNALLY,
  231.         INSTANCE_METHOD_OVERRIDE,
  232.         INSTANCE_METHOD_OVERRIDE_EXTERNALLY,
  233.         CLASS_METHOD_OVERRIDE,
  234.         CLASS_METHOD_OVERRIDE_EXTERNALLY,
  235.         MISMATCHED_OVERRIDDEN_EXCEPTION,
  236.         MISMATCHED_OVERRIDDEN_EXCEPTION_EXTERNALLY,
  237.         ABSTRACT_METHOD_WITH_BODY,
  238.         NON_ABSTRACT_METHOD_WITHOUT_BODY,
  239.         BAD_ACCESS_METHOD_OVERRIDE,
  240.         BAD_ACCESS_METHOD_OVERRIDE_EXTERNALLY,
  241.         STATIC_OVERRIDE_ABSTRACT,
  242.         STATIC_OVERRIDE_ABSTRACT_EXTERNALLY,
  243.         CIRCULAR_THIS_CALL,
  244.         INSTANCE_VARIABLE_IN_EXPLICIT_CONSTRUCTOR_INVOCATION,
  245.         INSTANCE_METHOD_IN_EXPLICIT_CONSTRUCTOR_INVOCATION,
  246.         SYNTHETIC_VARIABLE_ACCESS,
  247.         SYNTHETIC_METHOD_INVOCATION,
  248.         SYNTHETIC_CONSTRUCTOR_INVOCATION,
  249.         THIS_IN_EXPLICIT_CONSTRUCTOR_INVOCATION,
  250.         SUPER_IN_EXPLICIT_CONSTRUCTOR_INVOCATION,
  251.         INNER_CONSTRUCTOR_IN_EXPLICIT_CONSTRUCTOR_INVOCATION,
  252.         EXPRESSION_NOT_CONSTANT,
  253.         UNCATCHABLE_METHOD_THROWN_CHECKED_EXCEPTION,
  254.         UNCATCHABLE_CONSTRUCTOR_THROWN_CHECKED_EXCEPTION,
  255.         UNREACHABLE_CATCH_CLAUSE,
  256.         UNREACHABLE_DEFAULT_CATCH_CLAUSE,
  257.         UNREACHABLE_STATEMENT,
  258.         UNREACHABLE_STATEMENTS,
  259.         UNREACHABLE_CONSTRUCTOR_BODY,
  260.         BLOCKED_CATCH_CLAUSE,
  261.         VARIABLE_NOT_DEFINITELY_ASSIGNED,
  262.         TYPED_METHOD_WITH_NO_RETURN,
  263.  
  264.         DEFAULT_METHOD_NOT_OVERRIDDEN,
  265.  
  266.         ONE_UNNAMED_PACKAGE,
  267.         TYPE_NOT_IN_UNNAMED_PACKAGE,
  268.         TYPE_IN_WRONG_PACKAGE,
  269.         TYPE_NAME_MISMATCH,
  270.  
  271.         DEPRECATED_TYPE,
  272.         DEPRECATED_FIELD,
  273.         DEPRECATED_METHOD,
  274.         DEPRECATED_CONSTRUCTOR,
  275.  
  276.         COMPRESSED_ZIP_FILE,
  277.         INVALID_CLASS_FILE,
  278.         CANNOT_OPEN_CLASS_FILE,
  279.  
  280.         STATIC_NOT_INNER_CLASS,
  281.         TYPE_NOT_INNER_CLASS,
  282.         SUPER_TYPE_NOT_INNER_CLASS,
  283.         STATIC_FIELD_IN_INNER_CLASS,
  284.         STATIC_METHOD_IN_INNER_CLASS,
  285.         STATIC_TYPE_IN_INNER_CLASS,
  286.         STATIC_INITIALIZER_IN_INNER_CLASS,
  287.         INNER_CLASS_REFERENCE_TO_NON_FINAL_LOCAL_VARIABLE,
  288.         STATIC_PROTECTED_FIELD_ACCESS,
  289.         STATIC_PROTECTED_METHOD_ACCESS,
  290.         INHERITANCE_AND_LEXICAL_SCOPING_CONFLICT_WITH_LOCAL,
  291.         INHERITANCE_AND_LEXICAL_SCOPING_CONFLICT_WITH_MEMBER,
  292.         ILLEGAL_THIS_FIELD_ACCESS,
  293.         CONSTRUCTOR_FOUND_IN_ANONYMOUS_CLASS,
  294.         ENCLOSING_INSTANCE_ACCESS_FROM_CONSTRUCTOR_INVOCATION,
  295.         ENCLOSING_INSTANCE_ACCESS_ACROSS_STATIC_REGION,
  296.         ENCLOSING_INSTANCE_NOT_ACCESSIBLE,
  297.         INVALID_ENCLOSING_INSTANCE,
  298.  
  299.         ZERO_DIVIDE_ERROR,
  300.         ZERO_DIVIDE_CAUTION,
  301.         VOID_TO_STRING,
  302.  
  303.         _num_kinds
  304.     };
  305.  
  306.     static void StaticInitializer();
  307.  
  308.     void Report(SemanticErrorKind,
  309.                 LexStream::TokenIndex,
  310.                 LexStream::TokenIndex,
  311.                 wchar_t * = NULL,
  312.                 wchar_t * = NULL,
  313.                 wchar_t * = NULL,
  314.                 wchar_t * = NULL,
  315.                 wchar_t * = NULL,
  316.                 wchar_t * = NULL,
  317.                 wchar_t * = NULL,
  318.                 wchar_t * = NULL,
  319.                 wchar_t * = NULL);
  320.  
  321.     SemanticError(Control &, FileSymbol *);
  322.     ~SemanticError()
  323.     {
  324.         for (int i = 0; i < buffer.Length(); i++)
  325.             delete [] buffer[i];
  326.     }
  327.  
  328.     int num_errors,
  329.         num_warnings;
  330.  
  331.     void EnteringClone() { clone_count++; }
  332.     void ExitingClone()  { clone_count--; }
  333.  
  334.     int PrintMessages();
  335.  
  336. private:
  337.     friend class Semantic;
  338.  
  339.     Control &control;
  340.     LexStream *lex_stream;
  341.  
  342.     int clone_count;
  343.  
  344.     struct ErrorInfo
  345.     {
  346.         LexStream::TokenIndex left_token,
  347.                               right_token;
  348.         wchar_t *insert1,
  349.                 *insert2,
  350.                 *insert3,
  351.                 *insert4,
  352.                 *insert5,
  353.                 *insert6,
  354.                 *insert7,
  355.                 *insert8,
  356.                 *insert9;
  357.         unsigned num;
  358.         short    msg_code;
  359.         short    right_string_length;
  360.     };
  361.  
  362.     Tuple<wchar_t *> buffer;
  363.     Tuple<ErrorInfo> error;
  364.  
  365.     void PrintLargeSource(int);
  366.     void PrintSmallSource(int);
  367.  
  368.     void PrintEmacsMessage(int);
  369.  
  370.     static unsigned char warning[];
  371.     static void (*print_message[_num_kinds])(ErrorInfo &, LexStream *, Control &);
  372.  
  373.     static bool NotDot(wchar_t *str) { return (! (wcslen(str) == 0 || wcscmp(str, StringConstant::US__DO) == 0)); }
  374.  
  375.     static void PrintBAD_ERROR(ErrorInfo &, LexStream *, Control &);
  376.     static void PrintDEFAULT_ERROR(ErrorInfo &, LexStream *, Control &);
  377.     static void PrintINVALID_OPTION(ErrorInfo &, LexStream *, Control &);
  378.     static void PrintINVALID_K_OPTION(ErrorInfo &, LexStream *, Control &);
  379.     static void PrintINVALID_K_TARGET(ErrorInfo &, LexStream *, Control &);
  380.     static void PrintINVALID_TAB_VALUE(ErrorInfo &, LexStream *, Control &);
  381.     static void PrintINVALID_DIRECTORY(ErrorInfo &, LexStream *, Control &);
  382.     static void PrintUNSUPPORTED_ENCODING(ErrorInfo &, LexStream *, Control &);
  383.     static void PrintUNSUPPORTED_OPTION(ErrorInfo &, LexStream *, Control &);
  384.     static void PrintDISABLED_OPTION(ErrorInfo &, LexStream *, Control &);
  385.     static void PrintNO_CURRENT_DIRECTORY(ErrorInfo &, LexStream *, Control &);
  386.     static void PrintCANNOT_OPEN_ZIP_FILE(ErrorInfo &, LexStream *, Control &);
  387.     static void PrintCANNOT_OPEN_PATH_DIRECTORY(ErrorInfo &, LexStream *, Control &);
  388.     static void PrintPACKAGE_NOT_FOUND(ErrorInfo &, LexStream *, Control &);
  389.     static void PrintCANNOT_OPEN_DIRECTORY(ErrorInfo &, LexStream *, Control &);
  390.     static void PrintBAD_INPUT_FILE(ErrorInfo &, LexStream *, Control &);
  391.     static void PrintUNREADABLE_INPUT_FILE(ErrorInfo &, LexStream *, Control &);
  392.     static void PrintNON_STANDARD_LIBRARY_TYPE(ErrorInfo &, LexStream *, Control &);
  393.     static void PrintLIBRARY_METHOD_NOT_FOUND(ErrorInfo &, LexStream *, Control &);
  394.     static void PrintCANNOT_REOPEN_FILE(ErrorInfo &, LexStream *, Control &);
  395.     static void PrintCANNOT_WRITE_FILE(ErrorInfo &, LexStream *, Control &);
  396.     static void PrintCONSTANT_POOL_OVERFLOW(ErrorInfo &, LexStream *, Control &);
  397.     static void PrintINTERFACES_OVERFLOW(ErrorInfo &, LexStream *, Control &);
  398.     static void PrintMETHODS_OVERFLOW(ErrorInfo &, LexStream *, Control &);
  399.     static void PrintSTRING_OVERFLOW(ErrorInfo &, LexStream *, Control &);
  400.     static void PrintPARAMETER_OVERFLOW(ErrorInfo &, LexStream *, Control &);
  401.     static void PrintARRAY_OVERFLOW(ErrorInfo &, LexStream *, Control &);
  402.     static void PrintFIELDS_OVERFLOW(ErrorInfo &, LexStream *, Control &);
  403.     static void PrintLOCAL_VARIABLES_OVERFLOW(ErrorInfo &, LexStream *, Control &);
  404.     static void PrintSTACK_OVERFLOW(ErrorInfo &, LexStream *, Control &);
  405.     static void PrintCODE_OVERFLOW(ErrorInfo &, LexStream *, Control &);
  406.     static void PrintCANNOT_COMPUTE_COLUMNS(ErrorInfo &, LexStream *, Control &);
  407.  
  408.     static void PrintEMPTY_DECLARATION(ErrorInfo &, LexStream *, Control &);
  409.     static void PrintREDUNDANT_ABSTRACT(ErrorInfo &, LexStream *, Control &);
  410.     static void PrintREDUNDANT_FINAL(ErrorInfo &, LexStream *, Control &);
  411.     static void PrintREDUNDANT_PUBLIC(ErrorInfo &, LexStream *, Control &);
  412.     static void PrintREDUNDANT_STATIC(ErrorInfo &, LexStream *, Control &);
  413.     static void PrintOBSOLESCENT_ABSTRACT(ErrorInfo &, LexStream *, Control &);
  414.     static void PrintOBSOLESCENT_BRACKETS(ErrorInfo &, LexStream *, Control &);
  415.     static void PrintNO_TYPES(ErrorInfo &, LexStream *, Control &);
  416.     static void PrintMULTIPLE_PUBLIC_TYPES(ErrorInfo &, LexStream *, Control &);
  417.     static void PrintTYPE_IN_MULTIPLE_FILES(ErrorInfo &, LexStream *, Control &);
  418.     static void PrintPACKAGE_TYPE_CONFLICT(ErrorInfo &, LexStream *, Control &);
  419.     static void PrintDIRECTORY_FILE_CONFLICT(ErrorInfo &, LexStream *, Control &);
  420.     static void PrintFILE_FILE_CONFLICT(ErrorInfo &, LexStream *, Control &);
  421.     static void PrintMISMATCHED_TYPE_AND_FILE_NAMES(ErrorInfo &, LexStream *, Control &);
  422.     static void PrintREFERENCE_TO_TYPE_IN_MISMATCHED_FILE(ErrorInfo &, LexStream *, Control &);
  423.     static void PrintDUPLICATE_INNER_TYPE_NAME(ErrorInfo &, LexStream *, Control &);
  424.     static void PrintDUPLICATE_TYPE_DECLARATION(ErrorInfo &, LexStream *, Control &);
  425.     static void PrintUNNECESSARY_TYPE_IMPORT(ErrorInfo &, LexStream *, Control &);
  426.     static void PrintDUPLICATE_ACCESS_MODIFIER(ErrorInfo &, LexStream *, Control &);
  427.     static void PrintDUPLICATE_MODIFIER(ErrorInfo &, LexStream *, Control &);
  428.     static void PrintFINAL_ABSTRACT_CLASS(ErrorInfo &, LexStream *, Control &);
  429.     static void PrintVOLATILE_FINAL(ErrorInfo &, LexStream *, Control &);
  430.     static void PrintFINAL_VOLATILE(ErrorInfo &, LexStream *, Control &);
  431.     static void PrintINVALID_TOP_LEVEL_CLASS_MODIFIER(ErrorInfo &, LexStream *, Control &);
  432.     static void PrintINVALID_INNER_CLASS_MODIFIER(ErrorInfo &, LexStream *, Control &);
  433.     static void PrintINVALID_STATIC_INNER_CLASS_MODIFIER(ErrorInfo &, LexStream *, Control &);
  434.     static void PrintINVALID_LOCAL_CLASS_MODIFIER(ErrorInfo &, LexStream *, Control &);
  435.     static void PrintINVALID_INTERFACE_MODIFIER(ErrorInfo &, LexStream *, Control &);
  436.     static void PrintINVALID_FIELD_MODIFIER(ErrorInfo &, LexStream *, Control &);
  437.     static void PrintINVALID_LOCAL_MODIFIER(ErrorInfo &, LexStream *, Control &);
  438.     static void PrintINVALID_METHOD_MODIFIER(ErrorInfo &, LexStream *, Control &);
  439.     static void PrintINVALID_SIGNATURE_MODIFIER(ErrorInfo &, LexStream *, Control &);
  440.     static void PrintINVALID_CONSTRUCTOR_MODIFIER(ErrorInfo &, LexStream *, Control &);
  441.     static void PrintINVALID_CONSTANT_MODIFIER(ErrorInfo &, LexStream *, Control &);
  442.     static void PrintUNINITIALIZED_FIELD(ErrorInfo &, LexStream *, Control &);
  443.     static void PrintPARENT_TYPE_IN_UNNAMED_PACKAGE(ErrorInfo &, LexStream *, Control &);
  444.     static void PrintRECOMPILATION(ErrorInfo &, LexStream *, Control &);
  445.     static void PrintTYPE_NOT_FOUND(ErrorInfo &, LexStream *, Control &);
  446.     static void PrintDUPLICATE_ON_DEMAND_IMPORT(ErrorInfo &, LexStream *, Control &);
  447.     static void PrintNOT_A_TYPE(ErrorInfo &, LexStream *, Control &);
  448.     static void PrintNOT_A_CLASS(ErrorInfo &, LexStream *, Control &);
  449.     static void PrintNOT_AN_INTERFACE(ErrorInfo &, LexStream *, Control &);
  450.     static void PrintSUPER_IS_FINAL(ErrorInfo &, LexStream *, Control &);
  451.     static void PrintOBJECT_WITH_SUPER_TYPE(ErrorInfo &, LexStream *, Control &);
  452.     static void PrintOBJECT_HAS_NO_SUPER_TYPE(ErrorInfo &, LexStream *, Control &);
  453.     static void PrintDUPLICATE_FIELD(ErrorInfo &, LexStream *, Control &);
  454.     static void PrintDUPLICATE_METHOD(ErrorInfo &, LexStream *, Control &);
  455.     static void PrintDUPLICATE_CONSTRUCTOR(ErrorInfo &, LexStream *, Control &);
  456.     static void PrintMISMATCHED_INHERITED_METHOD(ErrorInfo &, LexStream *, Control &);
  457.     static void PrintMISMATCHED_INHERITED_METHOD_EXTERNALLY(ErrorInfo &, LexStream *, Control &);
  458.     static void PrintDUPLICATE_FORMAL_PARAMETER(ErrorInfo &, LexStream *, Control &);
  459.     static void PrintMISMATCHED_CONSTRUCTOR_NAME(ErrorInfo &, LexStream *, Control &);
  460.     static void PrintMETHOD_WITH_CONSTRUCTOR_NAME(ErrorInfo &, LexStream *, Control &);
  461.     static void PrintDUPLICATE_LOCAL_VARIABLE_DECLARATION(ErrorInfo &, LexStream *, Control &);
  462.     static void PrintDUPLICATE_LOCAL_TYPE_DECLARATION(ErrorInfo &, LexStream *, Control &);
  463.     static void PrintMULTIPLE_DEFAULT_LABEL(ErrorInfo &, LexStream *, Control &);
  464.     static void PrintUNDECLARED_LABEL(ErrorInfo &, LexStream *, Control &);
  465.     static void PrintDUPLICATE_LABEL(ErrorInfo &, LexStream *, Control &);
  466.     static void PrintCATCH_PRIMITIVE_TYPE(ErrorInfo &, LexStream *, Control &);
  467.     static void PrintCATCH_ARRAY_TYPE(ErrorInfo &, LexStream *, Control &);
  468.     static void PrintAMBIGUOUS_FIELD(ErrorInfo &, LexStream *, Control &);
  469.     static void PrintAMBIGUOUS_TYPE(ErrorInfo &, LexStream *, Control &);
  470.     static void PrintFIELD_IS_TYPE(ErrorInfo &, LexStream *, Control &);
  471.     static void PrintFIELD_NOT_FOUND(ErrorInfo &, LexStream *, Control &);
  472.     static void PrintFIELD_NAME_MISSPELLED(ErrorInfo &, LexStream *, Control &);
  473.     static void PrintFIELD_WITH_PRIVATE_ACCESS_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  474.     static void PrintFIELD_WITH_DEFAULT_ACCESS_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  475.     static void PrintNAME_NOT_FOUND(ErrorInfo &, LexStream *, Control &);
  476.     static void PrintMETHOD_NOT_FIELD(ErrorInfo &, LexStream *, Control &);
  477.     static void PrintNAME_NOT_YET_AVAILABLE(ErrorInfo &, LexStream *, Control &);
  478.     static void PrintNAME_NOT_VARIABLE(ErrorInfo &, LexStream *, Control &);
  479.     static void PrintNAME_NOT_CLASS_VARIABLE(ErrorInfo &, LexStream *, Control &);
  480.     static void PrintNOT_A_NUMERIC_VARIABLE(ErrorInfo &, LexStream *, Control &);
  481.     static void PrintMETHOD_NOT_FOUND(ErrorInfo &, LexStream *, Control &);
  482.     static void PrintMETHOD_NAME_NOT_FOUND_IN_TYPE(ErrorInfo &, LexStream *, Control &);
  483.     static void PrintMETHOD_NAME_MISSPELLED(ErrorInfo &, LexStream *, Control &);
  484.     static void PrintMETHOD_WITH_PRIVATE_ACCESS_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  485.     static void PrintMETHOD_WITH_DEFAULT_ACCESS_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  486.     static void PrintHIDDEN_METHOD_IN_ENCLOSING_CLASS(ErrorInfo &, LexStream *, Control &);
  487.     static void PrintFIELD_NOT_METHOD(ErrorInfo &, LexStream *, Control &);
  488.     static void PrintTYPE_NOT_METHOD(ErrorInfo &, LexStream *, Control &);
  489.     static void PrintTYPE_NOT_FIELD(ErrorInfo &, LexStream *, Control &);
  490.     static void PrintMETHOD_NOT_CLASS_METHOD(ErrorInfo &, LexStream *, Control &);
  491.     static void PrintAMBIGUOUS_CONSTRUCTOR_INVOCATION(ErrorInfo &, LexStream *, Control &);
  492.     static void PrintAMBIGUOUS_METHOD_INVOCATION(ErrorInfo &, LexStream *, Control &);
  493.     static void PrintCONSTRUCTOR_NOT_FOUND(ErrorInfo &, LexStream *, Control &);
  494.     static void PrintMETHOD_FOUND_FOR_CONSTRUCTOR(ErrorInfo &, LexStream *, Control &);
  495.     static void PrintABSTRACT_TYPE_CREATION(ErrorInfo &, LexStream *, Control &);
  496.     static void PrintINVALID_INSTANCEOF_CONVERSION(ErrorInfo &, LexStream *, Control &);
  497.     static void PrintINVALID_CAST_CONVERSION(ErrorInfo &, LexStream *, Control &);
  498.     static void PrintINVALID_CAST_TYPE(ErrorInfo &, LexStream *, Control &);
  499.     static void PrintINCOMPATIBLE_TYPE_FOR_INITIALIZATION(ErrorInfo &, LexStream *, Control &);
  500.     static void PrintINCOMPATIBLE_TYPE_FOR_ASSIGNMENT(ErrorInfo &, LexStream *, Control &);
  501.     static void PrintINCOMPATIBLE_TYPE_FOR_BINARY_EXPRESSION(ErrorInfo &, LexStream *, Control &);
  502.     static void PrintINCOMPATIBLE_TYPE_FOR_CONDITIONAL_EXPRESSION(ErrorInfo &, LexStream *, Control &);
  503.     static void PrintVOID_ARRAY(ErrorInfo &, LexStream *, Control &);
  504.     static void PrintVOID_TYPE_IN_EQUALITY_EXPRESSION(ErrorInfo &, LexStream *, Control &);
  505.     static void PrintTYPE_NOT_THROWABLE(ErrorInfo &, LexStream *, Control &);
  506.     static void PrintTYPE_NOT_PRIMITIVE(ErrorInfo &, LexStream *, Control &);
  507.     static void PrintTYPE_NOT_INTEGRAL(ErrorInfo &, LexStream *, Control &);
  508.     static void PrintTYPE_NOT_NUMERIC(ErrorInfo &, LexStream *, Control &);
  509.     static void PrintTYPE_NOT_INTEGER(ErrorInfo &, LexStream *, Control &);
  510.     static void PrintTYPE_NOT_BOOLEAN(ErrorInfo &, LexStream *, Control &);
  511.     static void PrintTYPE_NOT_ARRAY(ErrorInfo &, LexStream *, Control &);
  512.     static void PrintTYPE_NOT_REFERENCE(ErrorInfo &, LexStream *, Control &);
  513.     static void PrintTYPE_NOT_VALID_FOR_SWITCH(ErrorInfo &, LexStream *, Control &);
  514.     static void PrintTYPE_IS_VOID(ErrorInfo &, LexStream *, Control &);
  515.     static void PrintVALUE_NOT_REPRESENTABLE_IN_SWITCH_TYPE(ErrorInfo &, LexStream *, Control &);
  516.     static void PrintTYPE_NOT_CONVERTIBLE_TO_SWITCH_TYPE(ErrorInfo &, LexStream *, Control &);
  517.     static void PrintDUPLICATE_CASE_VALUE(ErrorInfo &, LexStream *, Control &);
  518.     static void PrintMISPLACED_THIS_EXPRESSION(ErrorInfo &, LexStream *, Control &);
  519.     static void PrintMISPLACED_SUPER_EXPRESSION(ErrorInfo &, LexStream *, Control &);
  520.     static void PrintTARGET_VARIABLE_IS_FINAL(ErrorInfo &, LexStream *, Control &);
  521.     static void PrintFINAL_VARIABLE_TARGET_IN_LOOP(ErrorInfo &, LexStream *, Control &);
  522.     static void PrintUNINITIALIZED_FINAL_VARIABLE(ErrorInfo &, LexStream *, Control &);
  523.     static void PrintUNINITIALIZED_STATIC_FINAL_VARIABLE(ErrorInfo &, LexStream *, Control &);
  524.     static void PrintUNINITIALIZED_FINAL_VARIABLE_IN_CONSTRUCTOR(ErrorInfo &, LexStream *, Control &);
  525.     static void PrintINIT_SCALAR_WITH_ARRAY(ErrorInfo &, LexStream *, Control &);
  526.     static void PrintINIT_ARRAY_WITH_SCALAR(ErrorInfo &, LexStream *, Control &);
  527.     static void PrintINVALID_BYTE_VALUE(ErrorInfo &, LexStream *, Control &);
  528.     static void PrintINVALID_SHORT_VALUE(ErrorInfo &, LexStream *, Control &);
  529.     static void PrintINVALID_CHARACTER_VALUE(ErrorInfo &, LexStream *, Control &);
  530.     static void PrintINVALID_INT_VALUE(ErrorInfo &, LexStream *, Control &);
  531.     static void PrintINVALID_LONG_VALUE(ErrorInfo &, LexStream *, Control &);
  532.     static void PrintINVALID_FLOAT_VALUE(ErrorInfo &, LexStream *, Control &);
  533.     static void PrintINVALID_DOUBLE_VALUE(ErrorInfo &, LexStream *, Control &);
  534.     static void PrintINVALID_STRING_VALUE(ErrorInfo &, LexStream *, Control &);
  535.     static void PrintRETURN_STATEMENT_IN_INITIALIZER(ErrorInfo &, LexStream *, Control &);
  536.     static void PrintMISPLACED_RETURN_WITH_EXPRESSION(ErrorInfo &, LexStream *, Control &);
  537.     static void PrintMISPLACED_RETURN_WITH_NO_EXPRESSION(ErrorInfo &, LexStream *, Control &);
  538.     static void PrintMISMATCHED_RETURN_AND_METHOD_TYPE(ErrorInfo &, LexStream *, Control &);
  539.     static void PrintEXPRESSION_NOT_THROWABLE(ErrorInfo &, LexStream *, Control &);
  540.     static void PrintBAD_THROWABLE_EXPRESSION_IN_TRY(ErrorInfo &, LexStream *, Control &);
  541.     static void PrintBAD_THROWABLE_EXPRESSION_IN_METHOD(ErrorInfo &, LexStream *, Control &);
  542.     static void PrintBAD_THROWABLE_EXPRESSION(ErrorInfo &, LexStream *, Control &);
  543.     static void PrintMISPLACED_BREAK_STATEMENT(ErrorInfo &, LexStream *, Control &);
  544.     static void PrintMISPLACED_CONTINUE_STATEMENT(ErrorInfo &, LexStream *, Control &);
  545.     static void PrintMISPLACED_EXPLICIT_CONSTRUCTOR_INVOCATION(ErrorInfo &, LexStream *, Control &);
  546.     static void PrintINVALID_CONTINUE_TARGET(ErrorInfo &, LexStream *, Control &);
  547.     static void PrintNON_ABSTRACT_TYPE_CONTAINS_ABSTRACT_METHOD(ErrorInfo &, LexStream *, Control &);
  548.     static void PrintNON_ABSTRACT_TYPE_INHERITS_ABSTRACT_METHOD(ErrorInfo &, LexStream *, Control &);
  549.     static void PrintNON_ABSTRACT_TYPE_INHERITS_ABSTRACT_METHOD_FROM_ABSTRACT_CLASS(ErrorInfo &, LexStream *, Control &);
  550.     static void PrintNON_ABSTRACT_TYPE_CANNOT_OVERRIDE_DEFAULT_ABSTRACT_METHOD(ErrorInfo &, LexStream *, Control &);
  551.     static void PrintNO_ABSTRACT_METHOD_IMPLEMENTATION(ErrorInfo &, LexStream *, Control &);
  552.     static void PrintDUPLICATE_INTERFACE(ErrorInfo &, LexStream *, Control &);
  553.     static void PrintUNKNOWN_QUALIFIED_NAME_BASE(ErrorInfo &, LexStream *, Control &);
  554.     static void PrintUNKNOWN_AMBIGUOUS_NAME(ErrorInfo &, LexStream *, Control &);
  555.     static void PrintCIRCULAR_INTERFACE(ErrorInfo &, LexStream *, Control &);
  556.     static void PrintCIRCULAR_CLASS(ErrorInfo &, LexStream *, Control &);
  557.     static void PrintTYPE_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  558.     static void PrintPRIVATE_FIELD_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  559.     static void PrintPROTECTED_FIELD_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  560.     static void PrintDEFAULT_FIELD_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  561.     static void PrintPRIVATE_METHOD_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  562.     static void PrintPROTECTED_METHOD_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  563.     static void PrintDEFAULT_METHOD_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  564.     static void PrintPRIVATE_CONSTRUCTOR_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  565.     static void PrintPROTECTED_CONSTRUCTOR_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  566.     static void PrintDEFAULT_CONSTRUCTOR_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  567.     static void PrintCONSTRUCTOR_DOES_NOT_THROW_THIS_EXCEPTION(ErrorInfo &, LexStream *, Control &);
  568.     static void PrintCONSTRUCTOR_DOES_NOT_THROW_SUPER_EXCEPTION(ErrorInfo &, LexStream *, Control &);
  569.     static void PrintPARAMETER_REDECLARED(ErrorInfo &, LexStream *, Control &);
  570.     static void PrintBAD_ABSTRACT_METHOD_MODIFIER(ErrorInfo &, LexStream *, Control &);
  571.     static void PrintABSTRACT_METHOD_MODIFIER_CONFLICT(ErrorInfo &, LexStream *, Control &);
  572.     static void PrintABSTRACT_METHOD_INVOCATION(ErrorInfo &, LexStream *, Control &);
  573.     static void PrintFINAL_METHOD_OVERRIDE(ErrorInfo &, LexStream *, Control &);
  574.     static void PrintFINAL_METHOD_OVERRIDE_EXTERNALLY(ErrorInfo &, LexStream *, Control &);
  575.     static void PrintPRIVATE_METHOD_OVERRIDE(ErrorInfo &, LexStream *, Control &);
  576.     static void PrintPRIVATE_METHOD_OVERRIDE_EXTERNALLY(ErrorInfo &, LexStream *, Control &);
  577.     static void PrintINSTANCE_METHOD_OVERRIDE(ErrorInfo &, LexStream *, Control &);
  578.     static void PrintINSTANCE_METHOD_OVERRIDE_EXTERNALLY(ErrorInfo &, LexStream *, Control &);
  579.     static void PrintCLASS_METHOD_OVERRIDE(ErrorInfo &, LexStream *, Control &);
  580.     static void PrintCLASS_METHOD_OVERRIDE_EXTERNALLY(ErrorInfo &, LexStream *, Control &);
  581.     static void PrintMISMATCHED_OVERRIDDEN_EXCEPTION(ErrorInfo &, LexStream *, Control &);
  582.     static void PrintMISMATCHED_OVERRIDDEN_EXCEPTION_EXTERNALLY(ErrorInfo &, LexStream *, Control &);
  583.     static void PrintABSTRACT_METHOD_WITH_BODY(ErrorInfo &, LexStream *, Control &);
  584.     static void PrintNON_ABSTRACT_METHOD_WITHOUT_BODY(ErrorInfo &, LexStream *, Control &);
  585.     static void PrintBAD_ACCESS_METHOD_OVERRIDE(ErrorInfo &, LexStream *, Control &);
  586.     static void PrintBAD_ACCESS_METHOD_OVERRIDE_EXTERNALLY(ErrorInfo &, LexStream *, Control &);
  587.     static void PrintSTATIC_OVERRIDE_ABSTRACT(ErrorInfo &, LexStream *, Control &);
  588.     static void PrintSTATIC_OVERRIDE_ABSTRACT_EXTERNALLY(ErrorInfo &, LexStream *, Control &);
  589.     static void PrintCIRCULAR_THIS_CALL(ErrorInfo &, LexStream *, Control &);
  590.     static void PrintINSTANCE_VARIABLE_IN_EXPLICIT_CONSTRUCTOR_INVOCATION(ErrorInfo &, LexStream *, Control &);
  591.     static void PrintINSTANCE_METHOD_IN_EXPLICIT_CONSTRUCTOR_INVOCATION(ErrorInfo &, LexStream *, Control &);
  592.     static void PrintSYNTHETIC_VARIABLE_ACCESS(ErrorInfo &, LexStream *, Control &);
  593.     static void PrintSYNTHETIC_METHOD_INVOCATION(ErrorInfo &, LexStream *, Control &);
  594.     static void PrintSYNTHETIC_CONSTRUCTOR_INVOCATION(ErrorInfo &, LexStream *, Control &);
  595.     static void PrintTHIS_IN_EXPLICIT_CONSTRUCTOR_INVOCATION(ErrorInfo &, LexStream *, Control &);
  596.     static void PrintSUPER_IN_EXPLICIT_CONSTRUCTOR_INVOCATION(ErrorInfo &, LexStream *, Control &);
  597.     static void PrintINNER_CONSTRUCTOR_IN_EXPLICIT_CONSTRUCTOR_INVOCATION(ErrorInfo &, LexStream *, Control &);
  598.     static void PrintEXPRESSION_NOT_CONSTANT(ErrorInfo &, LexStream *, Control &);
  599.     static void PrintUNCATCHABLE_METHOD_THROWN_CHECKED_EXCEPTION(ErrorInfo &, LexStream *, Control &);
  600.     static void PrintUNCATCHABLE_CONSTRUCTOR_THROWN_CHECKED_EXCEPTION(ErrorInfo &, LexStream *, Control &);
  601.     static void PrintUNREACHABLE_CATCH_CLAUSE(ErrorInfo &, LexStream *, Control &);
  602.     static void PrintUNREACHABLE_DEFAULT_CATCH_CLAUSE(ErrorInfo &, LexStream *, Control &);
  603.     static void PrintUNREACHABLE_STATEMENT(ErrorInfo &, LexStream *, Control &);
  604.     static void PrintUNREACHABLE_STATEMENTS(ErrorInfo &, LexStream *, Control &);
  605.     static void PrintUNREACHABLE_CONSTRUCTOR_BODY(ErrorInfo &, LexStream *, Control &);
  606.     static void PrintBLOCKED_CATCH_CLAUSE(ErrorInfo &, LexStream *, Control &);
  607.     static void PrintVARIABLE_NOT_DEFINITELY_ASSIGNED(ErrorInfo &, LexStream *, Control &);
  608.     static void PrintTYPED_METHOD_WITH_NO_RETURN(ErrorInfo &, LexStream *, Control &);
  609.  
  610.     static void PrintDEFAULT_METHOD_NOT_OVERRIDDEN(ErrorInfo &, LexStream *, Control &);
  611.  
  612.     static void PrintONE_UNNAMED_PACKAGE(ErrorInfo &, LexStream *, Control &);
  613.     static void PrintTYPE_NOT_IN_UNNAMED_PACKAGE(ErrorInfo &, LexStream *, Control &);
  614.     static void PrintTYPE_IN_WRONG_PACKAGE(ErrorInfo &, LexStream *, Control &);
  615.     static void PrintTYPE_NAME_MISMATCH(ErrorInfo &, LexStream *, Control &);
  616.  
  617.     static void PrintDEPRECATED_TYPE(ErrorInfo &, LexStream *, Control &);
  618.     static void PrintDEPRECATED_FIELD(ErrorInfo &, LexStream *, Control &);
  619.     static void PrintDEPRECATED_METHOD(ErrorInfo &, LexStream *, Control &);
  620.     static void PrintDEPRECATED_CONSTRUCTOR(ErrorInfo &, LexStream *, Control &);
  621.  
  622.     static void PrintCOMPRESSED_ZIP_FILE(ErrorInfo &, LexStream *, Control &);
  623.     static void PrintINVALID_CLASS_FILE(ErrorInfo &, LexStream *, Control &);
  624.     static void PrintCANNOT_OPEN_CLASS_FILE(ErrorInfo &, LexStream *, Control &);
  625.  
  626.     static void PrintSTATIC_NOT_INNER_CLASS(ErrorInfo &, LexStream *, Control &);
  627.     static void PrintTYPE_NOT_INNER_CLASS(ErrorInfo &, LexStream *, Control &);
  628.     static void PrintSUPER_TYPE_NOT_INNER_CLASS(ErrorInfo &, LexStream *, Control &);
  629.     static void PrintSTATIC_FIELD_IN_INNER_CLASS(ErrorInfo &, LexStream *, Control &);
  630.     static void PrintSTATIC_METHOD_IN_INNER_CLASS(ErrorInfo &, LexStream *, Control &);
  631.     static void PrintSTATIC_TYPE_IN_INNER_CLASS(ErrorInfo &, LexStream *, Control &);
  632.     static void PrintSTATIC_INITIALIZER_IN_INNER_CLASS(ErrorInfo &, LexStream *, Control &);
  633.     static void PrintINNER_CLASS_REFERENCE_TO_NON_FINAL_LOCAL_VARIABLE(ErrorInfo &, LexStream *, Control &);
  634.     static void PrintSTATIC_PROTECTED_FIELD_ACCESS(ErrorInfo &, LexStream *, Control &);
  635.     static void PrintSTATIC_PROTECTED_METHOD_ACCESS(ErrorInfo &, LexStream *, Control &);
  636.     static void PrintINHERITANCE_AND_LEXICAL_SCOPING_CONFLICT_WITH_LOCAL(ErrorInfo &, LexStream *, Control &);
  637.     static void PrintINHERITANCE_AND_LEXICAL_SCOPING_CONFLICT_WITH_MEMBER(ErrorInfo &, LexStream *, Control &);
  638.     static void PrintILLEGAL_THIS_FIELD_ACCESS(ErrorInfo &, LexStream *, Control &);
  639.     static void PrintCONSTRUCTOR_FOUND_IN_ANONYMOUS_CLASS(ErrorInfo &, LexStream *, Control &);
  640.     static void PrintENCLOSING_INSTANCE_ACCESS_FROM_CONSTRUCTOR_INVOCATION(ErrorInfo &, LexStream *, Control &);
  641.     static void PrintENCLOSING_INSTANCE_ACCESS_ACROSS_STATIC_REGION(ErrorInfo &, LexStream *, Control &);
  642.     static void PrintENCLOSING_INSTANCE_NOT_ACCESSIBLE(ErrorInfo &, LexStream *, Control &);
  643.     static void PrintINVALID_ENCLOSING_INSTANCE(ErrorInfo &, LexStream *, Control &);
  644.     static void PrintZERO_DIVIDE_ERROR(ErrorInfo &, LexStream *, Control &);
  645.     static void PrintZERO_DIVIDE_CAUTION(ErrorInfo &, LexStream *, Control &);
  646.     static void PrintVOID_TO_STRING(ErrorInfo &, LexStream *, Control &);
  647.  
  648.     void SortMessages();
  649. };
  650.  
  651. #endif
  652.